a = int(10)  # 创建一个int类的实例
b = str('hello')  # 创建一个str类的实例


# print(a, type(a))
# print(b, type(b))


# 定义一个类
# 使用class关键字来定义类，语法和函数很像
# class 类名([父类]):
#   代码块
# <class '__main__.MyClass'>
class MyClass():
    pass


# print(MyClass)
# 使用MyClass创建对象
# 使用类来创建对象，就像调用函数一样
mc = MyClass()  # mc就是通过MyClass()创建的对象，mc就是MyClass类的实例
mc_2 = MyClass()
mc_3 = MyClass()
mc_4 = MyClass()
# mc mc_2 mc_3 mc_4 都是MyClass的实例，他们都是一类对象
# isinstance()用来检查一个对象是否是一个类的实例

result = isinstance(mc, MyClass)
result = isinstance(mc, str)

# print(mc, type(mc))
print(result)

print(id(MyClass), type(MyClass))
# 现在我们通过MyClass()类创建的对象都是空对象
# 也就是对象中什么都没有，就相当于一个空盒子
# 可以向对象中添加变量，对象中的变量称为属性
# 语法：对象.属性名 = 属性值

mc.name = '孙悟空'
print(mc.name)
